LED点阵屏汉字移动显示51单片机+ULN2803+74HC595字模代码工具
上传时间: 2013-11-03
上传用户:liuwei6419
16 16点阵显示汉字原理及显示程序 #include "config.h" #define DOTLED_LINE_PORT PORTB #define DOTLED_LINE_DDR DDRB #define DOTLED_LINE_PIN PINB #define DOTLED_LINE_SCKT PB1 #define DOTLED_LINE_SCKH PB5 #define DOTLED_LINE_SDA PB3 #define DOTLED_ROW_PORT PORTC #define DOTLED_ROW_DDR DDRC #define DOTLED_ROW_PIN PINC #define DOTLED_ROW_A0 PC0 #define DOTLED_ROW_A1 PC1 #define DOTLED_ROW_A2 PC2 #define DOTLED_ROW_A3 PC3 #define DOTLED_ROW_E PC4 uint8 font[] = { /*-- 调入了一幅图像:这是您新建的图像 --*/ /*-- 宽度x高度=16x16 --*/ 0x00,0x00,0x00,0x00,0x08,0x38,0x18,0x44,0x08,0x44,0x08,0x04,0x08,0x08,0x08,0x10, 0x08,0x20,0x08,0x40,0x08,0x40,0x08,0x40,0x3E,0x7C,0x00,0x00,0x00,0x00,0x00,0x00 }; static void TransmitByte(uint8 byte); static void SelectRow(uint8 row); static void FlipLatchLine(void); static void TransmitByte(uint8 byte) { uint8 i; for(i = 0 ; i < 8 ; i ++) { if(byte & (1 << i)) { DOTLED_LINE_PORT |= _BV(DOTLED_LINE_SDA); } else { DOTLED_LINE_PORT &= ~_BV(DOTLED_LINE_SDA); } //__delay_cycles(100); DOTLED_LINE_PORT |= _BV(DOTLED_LINE_SCKH); //__delay_cycles(100); DOTLED_LINE_PORT &= ~_BV(DOTLED_LINE_SCKH); //__delay_cycles(100); } } static void SelectRow(uint8 row) { //row -= 1; row |= DOTLED_ROW_PIN & 0xe0; DOTLED_ROW_PORT = row; } static void FlipLatchLine(void) { DOTLED_LINE_PORT |= _BV(DOTLED_LINE_SCKT); DOTLED_LINE_PORT &= ~_BV(DOTLED_LINE_SCKT); } void InitDotLedPort(void) { DOTLED_LINE_PORT &= ~(_BV(DOTLED_LINE_SCKT) | _BV(DOTLED_LINE_SCKH)); DOTLED_LINE_PORT |= _BV(DOTLED_LINE_SDA); DOTLED_LINE_DDR |= _BV(DOTLED_LINE_SCKT) | _BV(DOTLED_LINE_SCKH) | _BV(DOTLED_LINE_SDA); DOTLED_ROW_PORT |= 0x1f; DOTLED_ROW_PORT &= 0xf0; DOTLED_ROW_DDR |= 0x1f; } void EnableRow(boolean IsEnable) { if(IsEnable) { DOTLED_ROW_PORT &= ~_BV(DOTLED_ROW_E); } else { DOTLED_ROW_PORT |= _BV(DOTLED_ROW_E); } } void PrintDotLed(uint8 * buffer) { uint8 i , tmp; for(i = 0 ; i < 16 ; i ++) { tmp = *buffer ++; TransmitByte(~tmp); tmp = *buffer ++; TransmitByte(~tmp); SelectRow(i); FlipLatchLine(); } } void main(void) { InitDotLedPort(); EnableRow(TRUE); while(1) { PrintDotLed(font); __delay_cycles(5000); } } //---------------------------------------------------- config.h文件 #ifndef _CONFIG_H #define _CONFIG_H //#define GCCAVR #define CPU_CYCLES 7372800L #ifndef GCCAVR #define _BV(bit) (1 << (bit)) #endif #define MSB 0x80 #define LSB 0x01 #define FALSE 0 #define TRUE 1 typedef unsigned char uint8; typedef unsigned int uint16; typedef unsigned long uint32; typedef unsigned char boolean; #include <ioavr.h> #include <inavr.h> #include "dotled.h" #endif //-----
上传时间: 2013-11-18
上传用户:mnacyf
~{JGR 8vQ IzWwR5SC5D2V?bD#DbO5M3~} ~{3v?b~} ~{Hk?b~} ~{2iQ/5H9&D\~} ~{?IRTWw@)3d~} ~{TZ~}JDK1.4.2~{OBM(9}~}
上传时间: 2015-02-22
上传用户:ommshaggar
所有汉字字形点阵...显示字库一般为16×16点阵字库,每个汉字的字形码占用32个字节的存储空间,打印字库一般为24×24点阵,每个汉字的字形
上传时间: 2013-12-17
上传用户:xinyuzhiqiwuwu
b to b 模式 电子商务系统 ,c# 开发 , B/S结构
上传时间: 2014-01-20
上传用户:hanli8870
汉字内码工具,能生成多种点阵的汉字字库,对于开发液晶显示程序很管用
上传时间: 2015-09-09
上传用户:gonuiln
基于Verilog-HDL的硬件电路的实现 9.8 基于256点阵的汉字显示 9.8.1 单个静止汉字显示的设计原理及其仿真实现 9.8.2 单个静止汉字显示的硬件实现 9.8.3 多个静止汉字显示的设计原理及其硬件实现 9.8.4 单个运动汉字显示的设计原理及其硬件实现 9.8.5 多个运动汉字显示的设计原理及其硬件实现
标签: Verilog-HDL 汉字显示 9.8 256
上传时间: 2013-12-31
上传用户:l254587896
制作任意大小点阵的汉字字库,主要用于嵌入式开发
上传时间: 2013-12-14
上传用户:llandlu
eprom的使用,点阵显示汉字,C51编写的,还可以使用的
上传时间: 2016-03-12
上传用户:semi1981
点阵上滚显示20字./*点阵显示汉字程串口输出字符数据,P2口输出行扫描信号,P0_0输出595锁存信号。 由于595接在LED阴极所以取模时要反白处理*/
上传时间: 2016-05-19
上传用户:1051290259